Generally speaking, when motion estimation is performed via a conventional motion estimation algorithm with respect to block units with different image properties, working times for the motion estimation of different block units can be quite different from one another. Therefore, when the conventional motion estimation algorithm is applied for estimating motion vectors of an image frame (e.g., a code of the image frame) having a time constraint, a working time for estimating a motion vector of a certain block unit of the image frame may occupy that of another block unit, thereby deteriorating smoothness of the image frame or efficiency of an overall system. In addition, when motion vectors of block units with different image properties are estimated by different motion estimation algorithms to avoid occurring the foregoing problem, not only quality of the image frame may become worse but also a circuit design of the overall system may be too complicated due to the application of the different motion estimation algorithms.